package com.lanou3g.code0411.exception;

import com.lanou3g.code0411.MyArray;
import com.lanou3g.code0411.Person;

/**
 * Created by dllo on 18/4/11.
 */

/*
*
* java提供了一种机制,来解决代码出错的问题,例如:
* 计算除法时,除数为0,或者一个对象没有new就去使用,再或者,我们要读取文件,但是文件并不存在
*
* //运行时异常都是程序崩溃的根源
* */
public class Main {

    //Throwable 的子类有条件可以终止代码,终止程序
    public static void main(String[] args) {
//        //int a = 3 / 0;
//        Person person = null;   //没有new对象  空指针异常
//        person.setName("sd");    //没有对象,无法赋值
//
//
//        //通过try-catch代码块,我们可以捕获任何 一个异常
//        //如果try代码块中,有任何代码出现了异常,并且这个异常是catch小括号内 声明的异常,那么这个异常就会被捕获,程序不会停止运行
//        //而是转为执行catch代码块内的代码
//
//
//        //所有的异常,通过throw关键字抛出,throw + 异常对象
//        System.out.println("ssss");
//        if (true){
//            throw new RuntimeException("可写任何异常提示信息");//让程序主动异常
//            //throw new  ArithmeticException();
//        }
//        System.out.println("ssdfgfdss");
//
//
//        try { //try 尽量少包,因为异常代码后的代码不执行
//
//            System.out.println("++++++++++++");
//            int  aa =3/0;
//            System.out.println("------------");
//        }catch (ArithmeticException e){
//            System.out.println("除数为0");
//
//            int a = 3 / 0; //catch 中的程序也有可能出bug
//
//        }
//
//        System.out.println("程序不会崩溃,会继续执行");


        MyArray<String> stringMyArray = new MyArray<>();
        stringMyArray.put("A");
        stringMyArray.put("B");

        String s = stringMyArray.get(10);
        s.equals("sdfsd");
        System.out.println("程序结束");


    }


}
